課程資訊
課程名稱
高等編譯器設計
Advanced Compiler Design 
開課學期
104-2 
授課對象
電機資訊學院  資訊工程學研究所  
授課教師
徐慰中 
課號
CSIE5054 
課程識別碼
922 U1220 
班次
 
學分
全/半年
半年 
必/選修
選修 
上課時間
星期一A,B,C(18:25~21:05) 
上課地點
資107 
備註
外校生修課,需先email取得授課教師同意,使得修課。
總人數上限:50人 
Ceiba 課程網頁
http://ceiba.ntu.edu.tw/1042CSIE5054_ 
課程簡介影片
 
核心能力關聯
核心能力與課程規劃關聯圖
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

http://www.csie.ntu.edu.tw/~hsuwc/ 

課程目標
 
課程要求
 
預期每週課後學習時數
 
Office Hours
 
指定閱讀
 
參考書目
 
評量方式
(僅供參考)
   
課程進度
週次
日期
單元主題
Week 1
2/22  Introduction 
Week 2
2/29  Holiday 
Week 3
3/07  LLVM, LLVM IR, API  
Week 4
3/14  Basic optimizations: redundancy elimination, DCE, copy propagation 
Week 4
2017/03/05  Traditional optimizations 
Week 5
3/21  Register Allocation 
Week 6
3/28  Instruction Scheduling 
Week 7
4/04  Holiday 
Week 8
4/11  Instruction scheduling:
Control and data speculative loads,
Superblocks and hyperblocks,
loop unrolling and software pipelining

 
Week 9
4/18  Data Flow Analysis (Chapter 9) 
Week 10
4/25  Mid-term Exam
 
Week 11
5/02  Auto-Vectorization 
Week 12
5/09  TLP and DLP
Cache Prefetching (Chapter 11)
 
Week 13
5/16  Iteration space, Polyhedral model, data reuse, data dependence tests (Chapter 11) 
Week 14
5/23  Data Reuse and Data Dependence 
Week 15
5/30  Guest Speaker (Skymizer CTO)
 
Week 16
6/06  GPGPU Compiler Optimizations 
Week 17
6/13  Machine learning guided compiler optimization 
Week 18
6/20  Final Exam